사이트 내 전체검색
PHP
[php] 답글 알고리즘 v 1.1
로빈아빠
https://cmd.kr/php/437 URL이 복사되었습니다.

본문

답글 알고리즘 v 1.1 

아랬글 보니까 적고 싶어지네여..구상한 바가 좀 있어서여^^;;

알고리즘과 관련있는 필드는 top level order 3개입니다. 그 외에 no 필드와 tltle 필드를 넣겠습니다.

제 알고리즘의 목적은 필드를 최소화하고 관련글 추적을 최적화하며, 쿼리를 단 1~2개로 유지시키는 겁니다(거창합니다~). 게시물이 많아져도 옛날 글(1번글 따위)에 답글을 왕창 달지 않는 한 최소의 수정을 하도록 "노력"하고 있습니다;;

처음 테이블에 글이 3개 있습니다.

no필드와 tltle필드는 뭐;;
top필드는 가장 윗단계의 글의 번호입니다. 답글이 아니면 그 글의 번호, 답글이면 최상위 글의 번호입니다.
level필드는 글의 답글 레벨입니다. 0이면 그냥 글, 1이면 답글, 2면 답글의 답글;;
order필드는 출력 순서를 결정합니다. 실제로 가장 중요한 역할을 하게 됩니다.

no top level order title 1 1 0 1 첫글 2 2 0 2 그 다음글 3 3 0 3 세번째글

출력할 때는 order필드의 역순으로 출력합니다.

번호 제목 3 세번째글 2 그 다음글 1 첫글

이렇게 되겠죠.

"그 다음글"에 답글이 달립니다.

no top level order title 1 1 0 1 첫글 2 2 0 2+1=3 그 다음글 3 3 0 3+1=4 세번째글 4 1 1 2 re)딴지글

답글이 달린 원본 글(top가 같고 level이 1적은 글)이후의 글의 order를 1 증가시켜줍니다. 답글이 기존 글의 order번호를 갖습니다.
top는 원본 글의 top번호를 갖습니다.

출력할 때는 level만큼 들여쓰기해줍니다.

번호 제목 4 세번째글 3 그 다음글 2 re)딴지글 1 첫글

이렇게 되겠죠.

"세번

댓글목록

등록된 댓글이 없습니다.

PHP
871 (11/18P)

Search

Copyright © Cmd 명령어 18.218.101.36